package com.atguigu.gulimall.coupon;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;


/**
 * 使用Nacos 配置中心来统一管理配置
 * ① 导入Spring-cloud-stater-alibaba-nacos-config 的依赖
 * ② 创建一个 bootstrap.properties 这个 是最先被扫描的
 * ③ 给配置中心加上一个默认的DataID(名称) 应用名.properties
 * ④ 加上动态刷新的注解在 Controller上面 @RefreshScope
 * ⑤  @value 来获取这个配置中心的名称
 * <p>
 * 二: 细节理解
 * 1. 命名空间(利用命名空间来实现环境隔离) 有生产环境,开发环境,等不同的配置文件 . 可以使用不同的名称空间里面的配置 默认是使用 Public 下面的配置文件
 * 需要在 bootstrap.properties 里面指定使用哪个命名空间下的配置  spring.cloud.nacos.config.namespace=6d970a36-640a-4439-ae60-3576a0fe221f
 * 1) 为了解决配置的繁琐 我们可以为每个微服务模块都新建一个命名空间
 * 2.配置集: 所有配置的集合
 * <p>
 * 3.配置集Id: 类似文件名  DataID
 * <p>
 * 4. 配置分组 :
 * 1) 默认所有的配置集都属于 : DEFAULT_GROUP
 * 2) 例如: 双11 使用这个组 618 使用别的组  在bootstrap 里面指定的配置文件组  spring.cloud.nacos.config.group=XXX
 * <p>
 * <p>
 * 5. 我们项目的使用 : 每个微服务创建自己的配置命名空间,使用配置分组来区分环境
 */
@EnableDiscoveryClient
@SpringBootApplication
public class GulimallCouponApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallCouponApplication.class, args);
    }

}
